/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package ejb.negocio;

import ejb.excepciones.ExcepcionExistencias;
import entidades.Pedido;
import java.util.List;
import javax.ejb.Local;

/**
 *
 * @author ribadas
 */
@Local
public interface CompraServiceLocal {

    void inicializarCarroCompra();

    void anadirProducto(long idProducto, long cantidad);

    void decrementarCantidad(long idProducto, long cantidad);

    void incrementarCantidad(long ipProducto, long incremento);

    void vaciarCarro();

    void confirmarCarro() throws ExcepcionExistencias;

    void eliminarProducto(long idProducto);

    void actualizarCantidad(long idProducto, long nuevaCantidad);

    boolean productoDisponible(long idProducto, long cantidad);

    void establecerCliente(long idCliente);

    Pedido generarPedido();

    List<ProductoCompra> obtenerCarroCompra();

    double calcularImporteTotal();
    
}
